wayland: Separate selection buffers and other per-selection atom data
authorCarlos Garnacho <carlosg@gnome.org>
Wed, 29 Jun 2016 15:13:55 +0000 (17:13 +0200)
committerCarlos Garnacho <carlosg@gnome.org>
Thu, 30 Jun 2016 12:10:26 +0000 (14:10 +0200)
commit0d30ad279f0ed1a60abf123693981d42b57090d2
treed5b768ae94965fc89f63a2254814ddf2acbb0578
parent4b003a75aa4bc7a5210792082380b24c78abc8d5
wayland: Separate selection buffers and other per-selection atom data

This has most notably impact in selection buffers, because those were
shared across all selection atoms. This turned out wrong on 2 situations:
- Because the selection atom was set at SelectionBuffer creation time, the
  GDK_SELECTION_NOTIFY events generated will have unexpected info if the
  buffer is attempted to be reused for another selection.
- Anytime different selections imply different stored content for the same
  target.

This is better separated into per-selection buffers, so it's not possible
to get collisions if a same target is used across different selections.

https://bugzilla.gnome.org/show_bug.cgi?id=768177
gdk/wayland/gdkselection-wayland.c